--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
tests/backend/test_lxst_profiles_compat.py dev (4e4ef052) Text, 1.95 KB
T8b949e# SPDX-License-Identifier: 0BSD
T8b949e"""Compat for LXST Profiles call modes on Android 0.4.x vs duplex builds."""
Tff7b72from T7ee787types Tff7b72import Te6edf3SimpleNamespace
Tff7b72from T7ee787meshchatxT7ee787.T7ee787srcT7ee787.T7ee787backend Tff7b72import Te6edf3lxst_profiles_compat Tff7b72as Te6edf3lxst_modes
Tff7b72def Td2a8fftest_legacy_profiles_without_modes_falls_back_to_full_duplexTb4b4b4(Tb4b4b4)Tb4b4b4:
Te6edf3legacy Tff7b72= Te6edf3SimpleNamespaceTb4b4b4(
Te6edf3BANDWIDTH_LOWTff7b72=T79c0ff0x30Tb4b4b4,
T8b949e# No MODE_* or available_modes on Android lxst 0.4.8
Tb4b4b4)
Tff7b72assert Te6edf3lxst_modesTff7b72.Td2a8ffduplex_modes_supportedTb4b4b4(Te6edf3legacyTb4b4b4) Tff7b72is Tff7b72False
Tff7b72assert Te6edf3lxst_modesTff7b72.Td2a8ffavailable_modesTb4b4b4(Te6edf3legacyTb4b4b4) Tff7b72== Tb4b4b4[Te6edf3lxst_modesTff7b72.Td2a8ffMODE_FULL_DUPLEXTb4b4b4]
Tff7b72assert Te6edf3lxst_modesTff7b72.Td2a8ffdefault_modeTb4b4b4(Te6edf3legacyTb4b4b4) Tff7b72== Te6edf3lxst_modesTff7b72.Td2a8ffMODE_FULL_DUPLEX
Tff7b72assert Te6edf3lxst_modesTff7b72.Td2a8ffmode_nameTb4b4b4(Te6edf3lxst_modesTff7b72.Td2a8ffMODE_FULL_DUPLEXTb4b4b4, Te6edf3legacyTb4b4b4) Tff7b72== Ta5d6ff"Ta5d6ffFull DuplexTa5d6ff"
Tff7b72assert Te6edf3lxst_modesTff7b72.Td2a8ffmode_abbreviationTb4b4b4(Te6edf3lxst_modesTff7b72.Td2a8ffMODE_HALF_DUPLEXTb4b4b4, Te6edf3legacyTb4b4b4) Tff7b72== Ta5d6ff"Ta5d6ffHDXTa5d6ff"
Tff7b72def Td2a8fftest_native_profiles_modes_are_forwardedTb4b4b4(Tb4b4b4)Tb4b4b4:
Te6edf3native Tff7b72= Te6edf3SimpleNamespaceTb4b4b4(
Te6edf3MODE_FULL_DUPLEXTff7b72=T79c0ff1Tb4b4b4,
Te6edf3MODE_HALF_DUPLEXTff7b72=T79c0ff2Tb4b4b4,
Te6edf3DEFAULT_MODETff7b72=T79c0ff1Tb4b4b4,
Te6edf3available_modesTff7b72=Tff7b72lambdaTb4b4b4: Tb4b4b4[T79c0ff1Tb4b4b4, T79c0ff2Tb4b4b4]Tb4b4b4,
Te6edf3mode_nameTff7b72=Tff7b72lambda Te6edf3midTb4b4b4: Ta5d6fffTa5d6ff"Ta5d6ffmode-Tffd700{Te6edf3midTffd700}Ta5d6ff"Tb4b4b4,
Te6edf3mode_abbrevationTff7b72=Tff7b72lambda Te6edf3midTb4b4b4: Ta5d6fffTa5d6ff"Ta5d6ffmTffd700{Te6edf3midTffd700}Ta5d6ff"Tb4b4b4,
Tb4b4b4)
Tff7b72assert Te6edf3lxst_modesTff7b72.Td2a8ffduplex_modes_supportedTb4b4b4(Te6edf3nativeTb4b4b4) Tff7b72is Tff7b72True
Tff7b72assert Te6edf3lxst_modesTff7b72.Td2a8ffavailable_modesTb4b4b4(Te6edf3nativeTb4b4b4) Tff7b72== Tb4b4b4[T79c0ff1Tb4b4b4, T79c0ff2Tb4b4b4]
Tff7b72assert Te6edf3lxst_modesTff7b72.Td2a8ffmode_nameTb4b4b4(T79c0ff2Tb4b4b4, Te6edf3nativeTb4b4b4) Tff7b72== Ta5d6ff"Ta5d6ffmode-2Ta5d6ff"
Tff7b72assert Te6edf3lxst_modesTff7b72.Td2a8ffmode_abbreviationTb4b4b4(T79c0ff1Tb4b4b4, Te6edf3nativeTb4b4b4) Tff7b72== Ta5d6ff"Ta5d6ffm1Ta5d6ff"
Tff7b72def Td2a8fftest_telephone_manager_resolves_modes_on_legacy_profilesTb4b4b4(Te6edf3monkeypatchTb4b4b4)Tb4b4b4:
Tff7b72from T7ee787unittestT7ee787.T7ee787mock Tff7b72import Te6edf3MagicMock
Tff7b72from T7ee787meshchatxT7ee787.T7ee787srcT7ee787.T7ee787backendT7ee787.T7ee787telephone_manager Tff7b72import Te6edf3TelephoneManager
Te6edf3legacy Tff7b72= Te6edf3SimpleNamespaceTb4b4b4(Tb4b4b4)
Te6edf3monkeypatchTff7b72.Td2a8ffsetattrTb4b4b4(
Ta5d6ff"Ta5d6ffmeshchatx.src.backend.lxst_profiles_compat.import_profilesTa5d6ff"Tb4b4b4,
Tff7b72lambdaTb4b4b4: Te6edf3legacyTb4b4b4,
Tb4b4b4)
Te6edf3tm Tff7b72= Te6edf3TelephoneManagerTb4b4b4(Te6edf3identityTff7b72=Te6edf3MagicMockTb4b4b4(Tb4b4b4)Tb4b4b4)
Tff7b72assert Te6edf3tmTff7b72.Td2a8ffresolve_call_mode_idTb4b4b4(Tff7b72NoneTb4b4b4) Tff7b72== Te6edf3lxst_modesTff7b72.Td2a8ffMODE_FULL_DUPLEX
Tff7b72assert Tb4b4b4(
Te6edf3tmTff7b72.Td2a8ffresolve_call_mode_idTb4b4b4(Te6edf3lxst_modesTff7b72.Td2a8ffMODE_HALF_DUPLEXTb4b4b4)
Tff7b72== Te6edf3lxst_modesTff7b72.Td2a8ffMODE_FULL_DUPLEX
Tb4b4b4)
Tff7b72assert Te6edf3tmTff7b72.Td2a8ffis_half_duplexTb4b4b4(Tb4b4b4) Tff7b72is Tff7b72False
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────